runtime.mspan.elemsize (field)
115 uses
runtime (current package)
arena.go#L782: racemalloc(unsafe.Pointer(span.base()), span.elemsize)
arena.go#L787: msanmalloc(unsafe.Pointer(span.base()), span.elemsize)
arena.go#L793: rzStart := span.base() + span.elemsize
arena.go#L795: asanunpoison(unsafe.Pointer(span.base()), span.elemsize)
arena.go#L891: gcController.totalFree.Add(int64(s.elemsize))
arena.go#L901: atomic.Xadd64(&stats.largeFree, int64(s.elemsize))
arena.go#L905: gcController.update(-int64(s.elemsize), 0)
arena.go#L909: racefree(unsafe.Pointer(s.base()), s.elemsize)
arena.go#L947: racefree(unsafe.Pointer(s.base()), s.elemsize)
arena.go#L950: msanfree(unsafe.Pointer(s.base()), s.elemsize)
arena.go#L953: asanpoison(unsafe.Pointer(s.base()), s.elemsize)
arena.go#L1060: s.elemsize -= userArenaChunkReserveBytes()
arena.go#L1071: s.limit = s.base() + s.elemsize
arena.go#L1075: s.elemsize -= redZoneSize(s.elemsize)
arena.go#L1087: atomic.Xadd64(&stats.largeAlloc, int64(s.elemsize))
arena.go#L1092: gcController.totalAlloc.Add(int64(s.elemsize))
arena.go#L1095: gcController.update(int64(s.elemsize), 0)
arena.go#L1110: memclrNoHeapPointers(unsafe.Pointer(s.base()), s.elemsize)
arena.go#L1116: s.userArenaChunkFree = makeAddrRange(base, base+s.elemsize)
arena.go#L1127: s.largeType.Size_ = s.elemsize
cgocall.go#L760: if tp, addr = tp.next(base + span.elemsize); addr == 0 {
heapdump.go#L494: size := s.elemsize
malloc.go#L981: return gclinkptr(uintptr(result)*s.elemsize + s.base())
malloc.go#L1017: v = gclinkptr(uintptr(freeIndex)*s.elemsize + s.base())
malloc.go#L1327: c.nextSample -= int64(span.elemsize)
malloc.go#L1329: profilealloc(mp, x, span.elemsize)
malloc.go#L1353: x = add(x, span.elemsize-size)
malloc.go#L1355: return x, span.elemsize
malloc.go#L1707: size = span.elemsize
mbitmap.go#L121: if base == addr && size == span.elemsize {
mbitmap.go#L146: if heapBitsInSpan(span.elemsize) {
mbitmap.go#L343: return span.base() + span.objIndex(addr)*span.elemsize
mbitmap.go#L514: } else if (!s.spanclass.noscan() && heapBitsInSpan(s.elemsize)) || s.isUserArenaChunk {
mbitmap.go#L518: if goexperiment.GreenTeaGC && gcUsesSpanInlineMarkBits(s.elemsize) {
mbitmap.go#L544: if span.elemsize > gc.MinSizeForMallocHeader {
mbitmap.go#L553: return heapBitsSlice(span.base(), pageSize, span.elemsize)
mbitmap.go#L555: return heapBitsSlice(span.base(), span.npages*pageSize, span.elemsize)
mbitmap.go#L586: hbitsBase, _ := spanHeapBitsRange(span.base(), span.npages*pageSize, span.elemsize)
mbitmap.go#L599: bits := span.elemsize / goarch.PtrSize
mbitmap.go#L653: dstBase, _ := spanHeapBitsRange(span.base(), pageSize, span.elemsize)
mbitmap.go#L658: bits := span.elemsize / goarch.PtrSize
mbitmap.go#L706: if doubleCheckHeapSetType && (!heapBitsInSpan(dataSize) || !heapBitsInSpan(span.elemsize)) {
mbitmap.go#L741: return span.elemsize
mbitmap.go#L799: return span.elemsize
mbitmap.go#L808: maxIterBytes := span.elemsize
mbitmap.go#L834: maxIterBytes := span.elemsize
mbitmap.go#L842: if i < span.elemsize {
mbitmap.go#L851: tp, addr = tp.next(x + span.elemsize)
mbitmap.go#L863: tp, addr = tp.next(x + span.elemsize)
mbitmap.go#L870: print("runtime: x=", hex(x), " dataSize=", dataSize, " elemsize=", span.elemsize, "\n")
mbitmap.go#L872: print("runtime: limit=", hex(x+span.elemsize), "\n")
mbitmap.go#L877: if tp, addr = tp.next(x + span.elemsize); addr == 0 {
mbitmap.go#L899: if i < span.elemsize {
mbitmap.go#L928: print("runtime: x=", hex(x), " dataSize=", dataSize, " elemsize=", span.elemsize, " interior=", hex(interior), " size=", size, "\n")
mbitmap.go#L1215: if doubleCheck && q != n/s.elemsize {
mbitmap.go#L1216: println(n, "/", s.elemsize, "should be", n/s.elemsize, "but got", q)
mbitmap.go#L1392: base = s.base() + objIndex*s.elemsize
mbitmap.go#L1858: limit := base + s.elemsize
mbitmap.go#L1879: for i := limit; i < s.elemsize; i++ {
mcache.go#L197: bytesAllocated := slotsUsed * int64(s.elemsize)
mcache.go#L234: usedBytes := uintptr(s.allocCount) * s.elemsize
mcache.go#L310: gcController.totalAlloc.Add(slotsUsed * int64(s.elemsize))
mcache.go#L318: dHeapLive -= int64(s.nelems-s.allocCount) * int64(s.elemsize)
mcleanup.go#L142: if argPtr >= base && argPtr < base+span.elemsize {
mcleanup.go#L162: if tp, addr = tp.next(cBase + cSpan.elemsize); addr == 0 {
mcleanup.go#L166: if ptr >= base && ptr < base+span.elemsize {
mfinal.go#L466: if !span.spanclass.noscan() && !heapBitsInSpan(span.elemsize) && span.spanclass.sizeclass() != 0 {
mgcmark.go#L476: p := s.base() + spf.special.offset/s.elemsize*s.elemsize
mgcmark.go#L1611: obj := span.base() + idx*span.elemsize
mgcmark.go#L1679: gcw.bytesMarked += uint64(span.elemsize)
mgcmark.go#L1703: print(" s.base()=", hex(s.base()), " s.limit=", hex(s.limit), " s.spanclass=", s.spanclass, " s.elemsize=", s.elemsize, " s.state=")
mgcmark.go#L1711: size := s.elemsize
mgcmark.go#L1760: if goexperiment.GreenTeaGC && gcUsesSpanInlineMarkBits(span.elemsize) {
mgcmark.go#L1772: gcw.bytesMarked += uint64(span.elemsize)
mgcmark_greenteagc.go#L186: if doubleCheckGreenTea && !gcUsesSpanInlineMarkBits(s.elemsize) {
mgcmark_greenteagc.go#L197: if doubleCheckGreenTea && !gcUsesSpanInlineMarkBits(s.elemsize) {
mgcmark_greenteagc.go#L222: if doubleCheckGreenTea && !gcUsesSpanInlineMarkBits(s.elemsize) {
mgcmark_greenteagc.go#L229: if gcUsesSpanInlineMarkBits(s.elemsize) {
mgcmark_greenteagc.go#L240: if gcUsesSpanInlineMarkBits(s.elemsize) {
mgcmark_greenteagc.go#L1200: n := s.elemsize
mgcmark_greenteagc.go#L1220: for oblet := b + maxObletBytes; oblet < s.base()+s.elemsize; oblet += maxObletBytes {
mgcmark_greenteagc.go#L1230: n = s.base() + s.elemsize - b
mgcsweep.go#L535: size := s.elemsize
mgcsweep.go#L624: x := s.base() + i*s.elemsize
mgcsweep.go#L655: if gcUsesSpanInlineMarkBits(s.elemsize) {
mgcsweep.go#L692: getg().m.p.ptr().trace.reclaimed += uintptr(nfreed) * s.elemsize
mgcsweep.go#L778: gcController.totalFree.Add(int64(nfreed) * int64(s.elemsize))
mgcsweep.go#L861: print("runtime: marked free object in span ", s, ", elemsize=", s.elemsize, " freeindex=", s.freeindex, " (bad use of unsafe.Pointer or having race conditions? try -d=checkptr or -race)\n")
mgcsweep.go#L865: addr := s.base() + i*s.elemsize
mgcsweep.go#L884: length := s.elemsize
mheap.go#L510: elemsize uintptr // computed from sizeclass or from npages
mheap.go#L524: size = s.elemsize
mheap.go#L1462: s.elemsize = nbytes
mheap.go#L1466: s.elemsize = uintptr(gc.SizeClassToSize[sizeclass])
mheap.go#L1469: if gcUsesSpanInlineMarkBits(s.elemsize) {
mheap.go#L1473: if heapBitsInSpan(s.elemsize) && !s.spanclass.noscan() {
mheap.go#L1477: s.nelems = uint16((nbytes - reserve) / s.elemsize)
mheap.go#L1479: if !s.spanclass.noscan() && heapBitsInSpan(s.elemsize) {
mheap.go#L1481: s.nelems = uint16((nbytes - (nbytes / goarch.PtrSize / 8)) / s.elemsize)
mheap.go#L1483: s.nelems = uint16(nbytes / s.elemsize)
mheap.go#L1497: s.limit = s.base() + s.elemsize*uintptr(s.nelems)
mheap.go#L1536: if gcUsesSpanInlineMarkBits(s.elemsize) {
mheap.go#L1753: if gcUsesSpanInlineMarkBits(s.elemsize) {
mheap.go#L1829: span.elemsize = 0
mwbbuf.go#L262: gcw.bytesMarked += uint64(span.elemsize)
pinner.go#L203: offset := objIndex * span.elemsize
pinner.go#L217: offset := objIndex * span.elemsize
pinner.go#L390: offset := objIndex * span.elemsize
stack.go#L211: s.elemsize = fixedStack << order
stack.go#L212: for i := uintptr(0); i < _StackCacheSize; i += s.elemsize {
stack.go#L427: s.elemsize = uintptr(n)
traceallocfree.go#L71: x := s.base() + i*s.elemsize
 |
The pages are generated with Golds v0.8.4. (GOOS=linux GOARCH=amd64)
Golds is a Go 101 project developed by Tapir Liu.
PR and bug reports are welcome and can be submitted to the issue list.
Please follow @zigo_101 (reachable from the left QR code) to get the latest news of Golds. |